草庐IT

php dns 记录

全部标签

java - 我能否在启用所有日志记录和禁用所有日志记录的情况下自动执行一次 JUnit 测试用例?

我找到了解决方案,请参阅下面我自己的回答。有没有人有更优雅的?我想这样做是为了增加代码覆盖率并发现细微的错误。假设要测试以下类:publicclassFoo{privatefinalLoggerlogger=LoggerFactory.getLogger(Foo.class);publicvoidbar(){Stringparam=[..];if(logger.isInfoEnabled())logger.info("Amessagewithparameter{}",param);if(logger.isDebugEnabled()){//somecomplicatedpreparat

java - 如何使用 Hibernate(在 Java 中)复制记录?

在同一个表中复制记录的最佳方法是什么?类似的东西:Addressaddress=AddressDAO.get(id);address.setId(null);AddressDAO.add(address); 最佳答案 是的,这应该有效。我不确定hibernate是否不检查对象引用,所以如果这不起作用,您可能需要创建一个新实例并复制所有属性(使用BeanUtils.copyProperties,甚至BeanUtils.cloneBean(..)),然后将ID设置为null/0。 关于jav

java - 如何在 Java 中记录任意对象的内部信息?

我有一个结构未知的Java对象。现在我想将这个结构(属性及其值)输出到日志文件。当然,我有兴趣以递归模式执行此操作。是否有任何图书馆可以帮助我? 最佳答案 XStream非常擅长打印对象图,甚至在您的类中没有任何额外配置或额外代码的情况下处理循环(即不弄乱toString()的)。只需添加库,您就可以对任何东西执行此操作并获得漂亮、有用的输出:log.debug("Theobject:{}",newXStream().toXML(anyObject));这将为您提供XML输出。如果你更喜欢JSON,你可以通过更多的工作来获得它,如X

java - 如何使用 Google Guice 注入(inject)记录器

通常我这样定义记录器:privatestaticfinalLoggerlogger=LoggerFactory.getLogger(MyClass.class);但是在使用@Inject时我们必须使用非静态和非final字段,比如:@InjectprivateLoggerlogger;即记录器将在此类的每个实例中创建,记录器也是可变的。可能存在某种使记录器静态的方法?还有我如何将记录器绑定(bind)到某个类(我在从工厂LoggerFactory.getLogger(MyClass.class);创建记录器对象时使用发送类对象,如何使用注入(inject)以相同的方式创建记录器?)?

Java 日志记录异常,使用 getMessage 或 toString : log. warn(ex.getMessage()) 或 log.warn(ex) 使用开源

我的问题是:用getMessage或toString或两者都记录更好吗?考虑到开源引发的错误。看到评论中的问题,但没有得到答案。也许我错过了什么?不要介意记录其中之一的小性能影响,但除非有充分的理由,否则不要同时记录两者。意思是log(ex)或log(ex.getMessage),不是堆栈跟踪。锯1,2和3记录异常:哪个更好:log.warn(ex.getMessage(),ex)或log.warn(ex,ex);我注意到有时getMessage返回空或null,所以在一般实践中有什么理由不使用:log.warn(ex,ex);因为它似乎打印了类名和消息(如果已设置)?我想一个原因可能

java - 如何在 hibernate 中记录失败的sql?

我正在使用spring-data-jpa构建一个SpringBoot应用程序。我知道如何记录这个问题中的所有sql。HowtoprintaquerystringwithparametervalueswhenusingHibernate但是如果我只想记录失败的sql怎么办? 最佳答案 有两种选择:使用参数值配置sql日志记录。禁用jdbc批处理并通过hibernate方式启用刷新。添加调试JDBC驱动程序,例如p6spy,它或多或少会完全按照上述描述进行操作。首先,让我们分析问题并将查询类型拆分为SELECT和INSERT/UPDAT

java - 在大型 Java 应用程序中标准化日志记录的方法

在大型应用程序中,日志记录是必不可少的,但是当许多开发人员处理代码时,日志可能会变得困惑。可以这样写:log.info("Loaded"+rowCount+"recodrsfromthedatabase.");另一个可能会做这样的事情:log.debug("Recordsread={}",rowCount);第三个开发人员可能认为这是正确的方法:log.trace("Record(s)read:"+NumberFormat.getInstance().format(rowCount)+",values:"+values);这将导致日志难以阅读,也更难解析。您可以为开发人员提供什么指导来

java - SLF4J 记录到文件与 DB 与 Solr

我需要一些有关SLF4J日志记录的建议。目前,我们正在为我们的Java网络应用程序使用SLF4J日志记录(log4j绑定(bind)),它使用简单的ConsoleAppender。我们的下一步是研究可以保存日志的地方。我们的应用程序每天处理大约100,000条消息。每条消息生成大约60-100行日志。我们的目标是能够快速搜索和找到失败的消息(使用messageId)并确定失败的原因。我的问题是:下面哪个是存储我们日志的好地方:文件数据库太阳能谢谢。 最佳答案 考虑从log4j切换到使用logbackslf4jAPI的实现Logbac

java - Log4J 不记录任何内容

我刚刚在工作中选择了一个现有的Web应用程序,它应该使用Log4J记录其Activity。我已经完全按照我被告知的那样配置了我的工作区,其他一切(数据库连接、身份验证等)都工作正常,除了没有任何内容被写入日志文件。其他类似的应用程序登录没有问题。当应用程序启动时,我查看了WebSphere控制台,那里没有任何错误可能表明Log4J没有记录的原因。我向另一位开发人员(他曾经开发过此应用程序,但时间不长,而且比我开发的还过时)提到了这一点,他说这是非常奇怪的行为,但不知道为什么会这样无法记录并且不报告任何错误。我检查了配置文件和属性文件,一切看起来都正常。我怀疑Log4J甚至从未阅读过lo

Java 记录器 - Netbeans 提示 "Inefficient use of string concatenation in logger"

我从java开始,我尝试记录一些东西。privatestaticfinalLogger_logger=Logger.getLogger("my");Stringcar="bmw";Stringdog="dog";_logger.info(car+"text"+dog);//onthislineNetbeans..在这条线上,Netbeans向我展示了黄色灯泡并说:记录器中字符串连接的使用效率低下所以我点击“将字符串连接转换为消息模板”并将代码更改为:_logger.log(Level.INFO,"[{0}]v{1}enabled",newObject[]{car,dog});这会导致问